public class GrayBox
extends java.lang.Object
IGrayBoxModule
,
MidiEvent
,
ProcessData
コンストラクタと説明 |
---|
GrayBox(int blockSize,
float sampleRate)
指定したパラメーターでGrayBoxオブジェクトを構築します.
|
GrayBox(int blockSize,
float sampleRate,
int audioChannels)
指定したパラメーターでGrayBoxオブジェクトを構築します.
|
GrayBox(int blockSize,
float sampleRate,
int audioChannels,
int moduleSlots)
指定したパラメーターでGrayBoxオブジェクトを構築します.
|
修飾子とタイプ | メソッドと説明 |
---|---|
IGrayBoxModule |
attachModule(int index,
IGrayBoxModule module)
指定したインデックスのスロットにモジュールを接続します.
|
void |
audioLatency(float val)
今回の音声処理のオーディオレイテンシーを設定します.
|
void |
bypassProcess(int index,
boolean bypass)
指定したインデックスのモジュールスロットの、オーディオプロセスのバイパスを設定します.
|
IGrayBoxModule |
detachModule(int index)
指定したインデックスのスロットに接続されているモジュールの接続を解除します.
|
int |
getAudioChannels()
音源システムのオーディオチャンネル数を取得します.
|
boolean |
getBypassStatus(int index)
指定したインデックスのモジュールスロットのバイパス状況を取得します.
|
float |
getDefaultAudioLatency()
音源システムの既定のオーディオレイテンシーの値を取得します.
|
IGrayBoxModule |
getModule(int index)
指定したインデックスのスロットに接続されているモジュールオブジェクトへの参照を取得します.
|
int |
getModuleSlots()
音源システムのモジュールスロット数を取得します.
|
int |
getProcessBlockSize()
音源システムのオーディオプロセスブロックサイズを取得します.
|
float |
getSampleRate()
音源システムのサンプリングレート値を取得します.
|
void |
initialize()
モジュールの接続を全て解除し、GrayBoxオブジェクトを初期化します.
|
void |
initiModules()
接続されている全てのモジュールを初期化します.
|
void |
process(float[][] audioOut,
int offsetFrames,
int sampleFrames)
今回の音声処理を行います.
|
void |
resetModules()
接続されている全てのモジュールの状態をリセットします.
|
void |
resumeProcess()
接続されているモジュールに音声処理が再開されたことを通知します.
|
int |
setAudioChannels(int ch)
音源システムのオーディオチャンネル数を設定します.
|
void |
setDefaultAudioLatency(float val)
音源システムの、既定のオーディオレイテンシーを設定します.
|
int |
setModuleSlots(int num)
音源システムのモジュールスロット数を設定します.
|
int |
setProcessBlockSize(int size)
音源システムのプロセスブロックサイズを設定します.
|
float |
setSampleRate(float sampleRate)
音源システムのサンプリングレートを設定します.
|
void |
startProcess()
接続されているモジュールに音声処理が開始されたことを通知します.
|
void |
stopProcess()
接続されているモジュールに音声処理が停止されたことを通知します.
|
void |
suspendProcess()
接続されているモジュールに音声処理が一時停止状態であることを通知します.
|
public GrayBox(int blockSize, float sampleRate)
GrayBox.process()
メソッドを実行する前に正しい値を設定してください。blockSize
- 音源システムのプロセスブロックサイズを設定します。(1 - 無制限)sampleRate
- 音源システムのサンプリングレート(Hz)を設定します。(1.0 - 無制限)public GrayBox(int blockSize, float sampleRate, int audioChannels)
GrayBox.process()
メソッドを実行する前に正しい値を設定してください。blockSize
- 音源システムのプロセスブロックサイズを設定します。(1 - 無制限)sampleRate
- 音源システムのサンプリングレート(Hz)を設定します。(1.0 - 無制限)audioChannels
- 音源システムのオーディオチャンネル数を設定します。(2 - 無制限)public GrayBox(int blockSize, float sampleRate, int audioChannels, int moduleSlots)
GrayBox.process()
メソッドを実行する前に正しい値を設定してください。blockSize
- 音源システムのプロセスブロックサイズを設定します。(1 - 無制限)sampleRate
- 音源システムのサンプリングレート(Hz)を設定します。(1.0 - 無制限)audioChannels
- 音源システムのオーディオチャンネル数を設定します。(2 - 無制限)moduleSlots
- プラグインモジュールのスロット数を設定します。(1 - 無制限)public float getSampleRate()
public float setSampleRate(float sampleRate)
IGrayBoxModule.updateSampleRate()
メソッドを呼び、
新しいサンプリングレート値をモジュールに渡します。
無効な値を指定した場合は何も行いません。
このメソッドはプロセスブロック外で使用してください。sampleRate
- 設定するサンプリングレートの値(Hz)(1.0~)。IGrayBoxModule.updateSampleRate(float)
public int getAudioChannels()
public int setAudioChannels(int ch)
IGrayBoxModule.updateAudioChannels()
メソッドを呼び、
新しいオーディオチャンネル数をモジュールに渡します。
このメソッドはプロセスブロック外で使用してください。ch
- 設定するオーディオのチャンネル数(2~)。IGrayBoxModule.updateAudioChannels(int)
public int getProcessBlockSize()
public int setProcessBlockSize(int size)
IGrayBoxModule.updateProcessBlockSize()
メソッドを呼び、
新しいプロセスブロックサイズの値をモジュールに渡します。
無効な値を指定した場合は何も行いません。
このメソッドはプロセスブロック外で使用してください。size
- 設定するプロセスブロックサイズの値(1~)。IGrayBoxModule.updateProcessBlockSize(int)
public float getDefaultAudioLatency()
public void setDefaultAudioLatency(float val)
val
- オーディオレイテンシーの値(mSec)public void audioLatency(float val)
process()
メソッド実行まで有効です。
実行後、既定のレイテンシーに再設定されます。val
- オーディオレイテンシーの値(mSec)。process(float[][], int, int)
public void initialize()
IGrayBoxModule.disconnectModule()
メソッドが呼ばれます。public int getModuleSlots()
public int setModuleSlots(int num)
IGrayBoxModule.disconnectModule()
メソッドが呼ばれます。
このメソッドはprocess()
メソッド外で使用してください。num
- 設定するモジュールスロット数。IGrayBoxModule.disconnectModule()
public IGrayBoxModule getModule(int index)
null
を返します。
範囲外のインデックスを指定した場合も同様にnull
を返します。index
- 0から始まるスロットのインデックス値。public IGrayBoxModule attachModule(int index, IGrayBoxModule module)
IGrayBoxModule.connectModule()
メソッドが呼ばれます。
既にモジュールが接続されている場合は、そのモジュールの接続解除を行った後に接続を行います。
モジュールの接続が解除された際にはIGrayBoxModule.disconnectModule()
メソッドが呼ばれます。
このメソッドはprocess()
メソッド外で使用してください。index
- 0から始まるスロットのインデックス値。module
- 接続するモジュール。null
が返ります。IGrayBoxModule.connectModule(sora.graybox.GrayBox)
,
IGrayBoxModule.disconnectModule()
public IGrayBoxModule detachModule(int index)
IGrayBoxModule.disconnectModule()
メソッドが呼ばれます。
このメソッドはprocess()
メソッド外で使用してください。index
- 0から始まるスロットのインデックス値。null
を返します。
範囲外のインデックスを指定した場合も同様です。IGrayBoxModule.disconnectModule()
public boolean getBypassStatus(int index)
true
を返します。
指定したインデックスのスロットにモジュールが接続されていない場合、
および範囲外のインデックスを指定した場合、true
を返します。index
- 0から始まるスロットのインデックス値。public void bypassProcess(int index, boolean bypass)
true
)するとモジュールの音声処理が行われません
(process()
メソッド実行時にIGrayBoxModule.process()
メソッドがスキップされます)。
バイパスフラグ設定後、該当スロットに接続されているモジュールの
IGrayBoxModule.updateBypassStatus()
メソッドが呼ばれます。
このメソッドはprocess()
メソッド外で使用してください。index
- 0から始まるスロットのインデックス値。bypass
- true
でバイパス。IGrayBoxModule.updateBypassStatus(boolean)
public void resetModules()
initiModules()
メソッドと機能が重複しますが、こちらは一時的なパラメータを戻すような弱い初期化です。
モジュールのIGrayBoxModule.resetModule()
メソッドが呼ばれます。
このメソッドはprocess()
メソッド外で使用してください。public void initiModules()
resetModule()
メソッドと機能が重複しますが、こちらは工場出荷時に戻すような強い初期化です。
モジュールのIGrayBoxModule.initiModule()
メソッドが呼ばれます。
このメソッドはprocess()
メソッド外で使用してください。public void suspendProcess()
IGrayBoxModule.suspendProcess()
メソッドが呼ばれます。
このメソッドはprocess()
メソッド外で使用してください。public void resumeProcess()
IGrayBoxModule.resumeProcess()
メソッドが呼ばれます。
このメソッドはprocess()
メソッド外で使用してください。public void startProcess()
IGrayBoxModule.startProcess()
メソッドが呼ばれます。
このメソッドはprocess()
メソッド外で使用してください。public void stopProcess()
IGrayBoxModule.stopProcess()
メソッドが呼ばれます。
このメソッドはprocess()
メソッド外で使用してください。public void process(float[][] audioOut, int offsetFrames, int sampleFrames)
IGrayBoxModule.process()
メソッドが呼ばれます。
パラメーターの値はProcessDataオブジェクトへ渡されます。
各モジュールはメソッドを通じProcessDataオブジェクトを参照して必要な処理を行います。
なお、モジュールが接続されているスロットのバイパスフラグがtrue
の場合、
IGrayBoxModule.process()
メソッドは呼ばれません。audioOut
- 出力オーディオバッファ
オーディオバッファのチャンネルオーダー | |
---|---|
index[0 ] | Left |
index[1 ] | Right |
index[2 ] | Front Center |
index[3 ] | Low Frequency |
index[4 ] | Back Left |
index[5 ] | Back Right |
index[6~] | 未定義 |
offsetFrames
- オーディオプロセスブロック先頭からのフレームオフセットsampleFrames
- 処理を行うフレーム数ProcessData
,
IGrayBoxModule.process(sora.graybox.ProcessData)